<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/9/7
 * Time: 11:33
 */

namespace app\index\controller;

//import('getui.IGt',EXTEND_PATH,'.Push.php');
use think\Loader;
import('getui.IGt',EXTEND_PATH,'.Push.php');
//import('getui.igetui.IGt',EXTEND_PATH,'.AppMessage.php');
//import('getui.igetui.IGt',EXTEND_PATH,'.APNPayload.php');
//import('getui.igetui.template.IGt',EXTEND_PATH,'.BaseTemplate.php');
//import('getui.IGt',EXTEND_PATH,'.Batch.php');
//import('getui.igetui.utils.AppConditions');
class GeTui
{
    private $host = 'http://sdk.open.api.igexin.com/apiex.htm';
    private $appkey = '78yTTgXWoe89HQiUhLEhn7';
    private $appid = 'xpVfMXbRsP9DBPlWWmjTb8';
    private $mastersecret = 'NOOdaH7djp8DSJzL3rgR73';
    public function a(){
        var_dump("1444");
    }

    public function pushToAndroidApp($title, $content, $message="123") {
//        require_once( '../../../extend/getui/IGt.Push.php');
        $igt = new \IGeTui($this->host, $this->appkey, $this->mastersecret);
        //$igt = new IGeTui('',APPKEY,MASTERSECRET);//此方式可通过获取服务端地址列表判断最快域名后进行消息推送，每10分钟检查一次最快域名
        //消息模版：
        // 1.TransmissionTemplate:透传功能模板
        // 2.LinkTemplate:通知打开链接功能模板
        // 3.NotificationTemplate：通知透传功能模板
        // 4.NotyPopLoadTemplate：通知弹框下载功能模板
        //$template = IGtNotyPopLoadTemplateDemo();
        //$template = IGtLinkTemplateDemo();
//            $template = IGtNotificationTemplateDemo();
        //$template = IGtTransmissionTemplateDemo();

        $template =  new \IGtTransmissionTemplate();
        $template->set_appId($this->appid);                   //应用appid
        $template->set_appkey($this->appkey);                 //应用appkey
        $template->set_transmissionType(2);            //透传消息类型
        $template->set_transmissionContent(json_encode($message));//透传内容

        //个推信息体
        //基于应用消息体
        $message = new \IGtAppMessage();
        $message->set_isOffline(true);
        $message->set_offlineExpireTime(3600*12*1000);//离线时间单位为毫秒，例，两个小时离线为3600*1000*2
        $message->set_data($template);
        $message->set_PushNetWorkType(0);//设置是否根据WIFI推送消息，1为wifi推送，0为不限制推送
        $message->set_speed(1000);// 设置群推接口的推送速度，单位为条/秒，例如填写100，则为100条/秒。仅对指定应用群推接口有效。
        $message->set_appIdList(array($this->appid));
        $message->set_phoneTypeList(array('ANDROID'));
//        $message->set_provinceList(array('浙江','上海','北京'));
//        $message->set_tagList(array('开心'));
        $res = $igt->pushMessageToApp($message);
        return $res;
    }
    function pushMessageToApp(){
        $igt = new \IGeTui($this->host, $this->appkey, $this->mastersecret);
        //$template =  new \IGtLinkTemplate();
        $template = $this->IGtLinkTemplateDemo();
//
//        $template->set_appId($this->appid);                   //应用appid
//        $template->set_appkey($this->appkey);                 //应用appkey
//        $template ->set_title(json_encode("123"));//通知栏标题
//        $template ->set_text(json_encode("123"));//通知栏内容
//        $template ->set_logo("");//通知栏logo
//        $template ->set_isRing(true);//是否响铃
//        $template ->set_isVibrate(true);//是否震动
//        $template ->set_isClearable(true);//通知栏是否可清除


        //基于应用消息体
        $message = new \IGtAppMessage();

        $message->set_isOffline(true);
        $message->set_offlineExpireTime(10 * 60 * 1000);//离线时间单位为毫秒，例，两个小时离线为3600*1000*2
        $message->set_data($template);

//    $message->setPushTime("201808011537");
        $appIdList=array($this->appid);
        $phoneTypeList=array('ANDROID');
        $provinceList=array('浙江');
        $tagList=array('中文');
        $age = array("0000", "0010");

        //$cdt = new \AppConditions();

//        $cdt->addCondition(AppConditions::PHONE_TYPE, $phoneTypeList);
//        $cdt->addCondition(AppConditions::REGION, $provinceList);
//        $cdt->addCondition(AppConditions::TAG, $tagList);
//    $cdt->addCondition("age", $age);

        $message->set_appIdList($appIdList);
        //$message->set_conditions($cdt);
        $rep = $igt->pushMessageToApp($message);

        var_dump($rep);
        echo ("<br><br>");
    }
    public function IGtLinkTemplateDemo(){
        $template =  new \IGtLinkTemplate();
        $template->set_appId($this->appid);
        $template->set_appkey($this->appkey);
        $template ->set_title("请输入通知标题1");//通知栏标题
        $template ->set_text("请输入通知内容");//通知栏内容
        $template ->set_logo("");//通知栏logo
        $template ->set_isRing(true);//是否响铃
        $template ->set_isVibrate(true);//是否震动
        $template ->set_isClearable(true);//通知栏是否可清除
        $template ->set_url("http://www.igetui.com/");//打开连接地址
        //$template->set_duration(BEGINTIME,ENDTIME); //设置ANDROID客户端在此时间区间内展示消息
        return $template;
    }
}